#ifndef __PVMRESAMPLERINT_H__
#define __PVMRESAMPLERINT_H__

#include "pvm/pvmtypes.h"

class IPVMVoice;

class IPVMVoiceResamplerInt
{
public:
	virtual ~IPVMVoiceResamplerInt() {};

	virtual pvm_bool Set(IPVMVoice* voice, pvm_uint32 dstSampleRate, pvm_uint32 bitsPerSample) = 0;
	virtual pvm_uint32 FillBuffer(void* data, pvm_uint32 maxSamples) = 0;
	virtual pvm_bool IsEmpty() = 0;
	virtual void Clear() = 0;
	virtual void SetRate(pvm_uint32 rate) = 0;//rate in percents - 100 normal rate, 200 - two times faster, 50 - two times slower
	virtual pvm_uint32 GetRate() = 0;
};


IPVMVoiceResamplerInt* PVMCreateVoiceResamplerInt(pvm_uint32 type);
	

#endif
